package com.zxx.pattern.mementoPattern;

import android.util.Log;

import java.util.ArrayList;
import java.util.List;

/**
 * @author zxx on 2021/3/17
 */
public class NoteCaretaker {

    //最大存储数量
    private static final int MAX = 30;

    // 存储30条记录
    private List<Memoto> mMemotos = new ArrayList<>(MAX);

    private int mIndex;

    //保存备忘录
    public void saveMemoto(Memoto memoto) {
        if (mMemotos.size() > MAX) {
            mMemotos.remove(0);
        }
        mMemotos.add(memoto);
        mIndex = mMemotos.size() - 1;
    }

    public Memoto getPrevMemoto() {
        Log.e("Tag-->", mMemotos.size() + "<--大小");
        if (mMemotos.size() > 0) {
            mIndex = mIndex > 0 ? --mIndex : mIndex;

            return mMemotos.get(mIndex);
        } else {
            return null;
        }
    }

    public Memoto getNextMemoto() {
        if (mMemotos.size() > 0) {
            mIndex = mIndex < mMemotos.size() - 1 ? ++mIndex : mIndex;


            return mMemotos.get(mIndex);
        } else {
            return null;
        }
    }

}
